import org.junit.Test;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;

public class Bcrytest {
    @Test
    public void test_01() {
        String p1="123";
//     创建加密器
        BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();
//        加密明文
        String encode = bCryptPasswordEncoder.encode(p1);
        //$2a$10$Tqg9Gkmds2ouJvMQ7wDphOSZFNm8gidSfIsu4yBrphrbegLcITidG
        System.out.println(encode);
//        使用指定的格式解密
//        "123"相当于我们提交的密码 而后面加密信息就是我们数据库查询的密码
//        spring-secutiy后台可能就是通过我们提供的加密器 按照这套规则解密 得到true-flase判断密码是否匹配
        boolean matches = bCryptPasswordEncoder.matches("123", "$2a$10$Tqg9Gkmds2ouJvMQ7wDphOSZFNm8gidSfIsu4yBrphrbegLcITidG");
        System.out.println(matches);


    }
}
